# 数据库模块初始化

# 导出核心组件
def get_db_session():
    """获取数据库会话"""
    from .database import SessionLocal
    return SessionLocal()

# 导出主要类
def get_database():
    """获取数据库工具类实例"""
    from .database import Database
    return Database()

def get_vector_store():
    """获取向量存储实例"""
    from .vector_store import VectorStore
    return VectorStore(get_database())

def get_document_manager():
    """获取文档管理器实例"""
    from .document_manager import DocumentManager
    return DocumentManager(get_database())

# 导出模型加载器
def get_model_loader():
    """获取模型加载器实例"""
    from .model_loader import model_loader
    return model_loader

# 导出数据库模型
from .models import Category, Document

# 导出所有公共接口
__all__ = [
    'get_db_session',
    'get_database', 
    'get_vector_store',
    'get_document_manager',
    'get_model_loader',
    'Category', 
    'Document'
]